{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true,
    "pycharm": {
     "name": "#%% pyplot-style\n",
     "is_executing": false
    }
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "outputs": [
    {
     "data": {
      "text/plain": "   A   B\n0  1   1\n1  2   4\n2  3   9\n3  4  16",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>1</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>2</td>\n      <td>4</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>3</td>\n      <td>9</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>4</td>\n      <td>16</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "output_type": "execute_result",
     "execution_count": 2
    }
   ],
   "source": [
    "df = pd.DataFrame({\n",
    "    'A': [1,2,3,4]\n",
    "})\n",
    "df['B'] = df['A'] ** 2\n",
    "df"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n",
     "is_executing": false
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 600x600 with 1 Axes>",
      "image/png": "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LJ3aNUEzrz9RISGuOq4UDR1/16ouMzNTzZu3r3IQomusjiUkJMjn82n37t0lfjERERGKiIgo8Ri3O543fjXwuqG+VOW99vLC9VqxI0txkW49ecUAhYdH1XF1aEz4u1Z57momGqbP17KJEyfq/fff//16WlqaQkJC1L59exurAmCH1bsy9OxX6yVJD13US20SCEFAsKFFqJb169dPDzzwgFq1aiWPx6Px48dr7Nixio6Otrs0APUoz+PVxPdWqMBr6Zyklho1oK3dJQEoBUGoll133XVas2aNLrnkEsXFxemyyy7TtGnT7C4LQD37+7z1+nVvlprHhGvaqN5yuRgXBAQjglAdmD59uqZPn253GQBssmTLQc1YuFGSNG1UbyXGlhwLCCA4MEYIAGpRdp5Hd3+wQj5LGjWgrc7t1crukgCUgyAEALVo+tw12nrgqFo3idSDF/WyuxwAFSAIAUAtWbhun/6xeJsk6cnRfdUkKszmigBUhCAEALUg42iB7v3wF0nSdYM76rTuiTZXBKAyCEIAUAse+s9q7cnMVefEGN13Xg+7ywFQSQQhAKihuSt3a/bynQpxSU9d2VfR4UzIBRoKghAA1MC+rDxNnr1SknTrsK4a0KGpzRUBqAqCEABUk2VZuv/jlTp0tEA9WsXpjhHd7S4JQBURhACgmj5cukNfrtmrsFCX/v6Hfopwh9pdEoAqIggBQDXsOHRUf/1PuiTprrOPV8/W7BAONEQEIQCoIp/P0qQPflFWnkcDOiTolqFd7S4JQDURhACgit7+cZd+2HRAUWGheurKfgoNYUNVoKFijicAVMHuI231xOItkqT7z++hzokx9hYEoEZoEQKASvJ4Lb26cqLyPD6d1i1R157S0e6SANQQQQgAKmnGt9u1KeMExUWG6onRfRRClxjQ4BGEAKASPlq6Q8/NNxuq/r8LuqpNQpTNFQGoDQShIJCamqqkpCQlJyfbXQqAYizL0vNfrdfdH6yQx2fptLbzdGm/4+wuC0AtIQgFgZSUFKWnpystLc3uUgAUUuD16f6PV+qpeeskSTef3k43nPicXC66xIDGgiAEAKU4kufRTW8u0btp2xXikh6+pJfuPbezQlyW3aUBqEVMnweAYvZm5mrczDSl785UVFionr+qv0YktZTHk2l3aQBqGUEIAApZtzdL42amaefhHCXGhuv165PV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\n"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plt.rcParams['font.sans-serif'] = ['Hiragino Sans GB']  # mac\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei']  # win\n",
    "plt.rcParams['axes.unicode_minus'] = False\n",
    "plt.figure(\n",
    "    facecolor='white', # 设置成白色\n",
    "    figsize=(6, 6), # 默认为（6，4）\n",
    "    dpi=100 # 默认为72\n",
    ")\n",
    "plt.plot(df['A'], df['B'])\n",
    "plt.title('我是标题',\n",
    "          fontsize=30, # 设置字体尺寸\n",
    "          color='r'\n",
    "          )\n",
    "\n",
    "plt.xlabel('X轴',\n",
    "          fontsize=24,\n",
    "          color='g')\n",
    "plt.ylabel('Y轴',\n",
    "           fontsize=24,\n",
    "           color='b',\n",
    "           rotation=0, # 旋转-水平状态\n",
    "           labelpad=30) # 距离坐标线的dpi距离\n",
    "\n",
    "plt.xlim([-1, 5])\n",
    "plt.ylim([0, 20])\n",
    "\n",
    "plt.xticks(\n",
    "    fontsize=20)\n",
    "# 显示指定的数据，其他数据不被显示，实际工作中不需要这样做\n",
    "# plt.yticks([0,5,10,15,20], fontsize=20) \n",
    "\n",
    "#  获取当前的坐标系，并对当前（主）坐标系进行设置\n",
    "plt.gca().xaxis.set_major_locator(\n",
    "    # 每两格显示一次\n",
    "    plt.MultipleLocator(2)\n",
    ")\n",
    "plt.gca().xaxis.set_minor_locator(\n",
    "    # 小（次）刻度\n",
    "    plt.MultipleLocator(0.5)\n",
    ")\n",
    "plt.gca().yaxis.set_major_locator(\n",
    "    plt.MultipleLocator(5)\n",
    ")\n",
    "plt.gca().yaxis.set_minor_locator(\n",
    "    plt.MultipleLocator(1)\n",
    ")\n",
    "\n",
    "plt.grid(color='y')\n",
    "\n",
    "\n",
    "\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n",
     "is_executing": false
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  },
  "pycharm": {
   "stem_cell": {
    "cell_type": "raw",
    "source": [],
    "metadata": {
     "collapsed": false
    }
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}